home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1995 November / Macworld Nov ’95.toast / Developers / BeachGEAR Dev. Kit / Development Guide next >
Encoding:
Text File  |  1995-06-09  |  9.9 KB  |  338 lines  |  [TEXT/BchT]

  1.  
  2. ÅôDevelopment GuideDžǬǢǃ
  3.  
  4. ñ{èëófiÇÕBeachGEARÅià»ç~GEARÇ‹ÇΩÇÕÉMÉAÅjÇÃäJî≠Ç…ïKóvÇ»ãZèpèÓïÒÇíÒãü
  5. ǵNjÇ∑ÅBGEARÇÕÉRÅ[ÉhÉäÉ\Å[ÉXÇΔǵǃçÏê¨Ç≥ÇÍÇƒÇ¢Ç»ÇØÇÍnjǻÇËÇ‹ÇπÇÒÇ™ÅA
  6. äeäJî≠ä¬ã´ÇÃè⁄ǵǢê‡ñæÇÕçsǢNjÇπÇÒÅBǪÇÃÇΩÇflÇ…äeäJî≠ä¬ã´Ç≈ÉRÅ[Éh
  7. ÉäÉ\Å[ÉXÇçÏê¨Ç∑ÇÈï˚ñ@Ç…Ç»ÇÍǃǮǢǃÇ≠ÇæÇ≥Ç¢ÅB
  8. DZÇÃèÓïÒÇÕè´óàÇÃÉoÅ[ÉWÉáÉìÉAÉbÉvÇ…ÇÊǡǃïœçXÇ≥ÇÍÇÈâ¬î\ê´Ç™Ç†ÇËÇ‹Ç∑ÅB
  9. ñ{èëófiÇÕìôïùÉtÉHÉìÉgÇ≈Ç®ì«Ç›Ç≠ÇæÇ≥Ç¢ÅB
  10.  
  11.  
  12. ÅmäJî≠ä¬ã´Ån
  13.  
  14. CodeWarrior(Metrowerks C/C++ 1.1à»ç~)Ç‹ÇΩÇÕTHINK C 6.0à»ç~Ç
  15. égópÇ∑ÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅBÉRÉìÉpÉCÉãÇ…ÇÕUniversal Headers 2.0a3à»ç~Ç™
  16. ïKóvÇ≈Ç∑ÅBäJî≠ä¬ã´Ç…ä‹Ç‹ÇÍǃǢǻǢèÍçáÇÕäeé©Ç≈ì¸éËǵǃÇ≠ÇæÇ≥Ç¢ÅB
  17. åªç›PascalÉCÉìÉ^ÉtÉFÅ[ÉXÇÕópà”Ç≥ÇÍǃǢNjÇπÇÒÅB
  18.  
  19.  
  20. ÅmBeachGEARÅn
  21.  
  22. Å|ëÆê´Å|
  23. 1)    ÉNÉäÉGÅ[É^            - 'BchT'
  24. 2)    ÉtÉ@ÉCÉãÉ^ÉCÉv        - 'BTGr'
  25. 3)    ÉäÉ\Å[ÉXÉ^ÉCÉv        - 'GrCD'
  26. 4)    ID                    - 128
  27.  
  28. Å|ãKñÒÅ|
  29. 1)    32KBà»ì‡ÇÃÇPå¬ÇÃÉZÉOÉÅÉìÉgÅB
  30. 2)    GEARópÉäÉ\Å[ÉXÇÃIDÇÕ128Ç©ÇÁ999ÇégópÇ≈Ç´Ç‹Ç∑ÅB
  31. 3)    GEARÇÕÉ|ÉbÉvÉAÉbÉvÉÅÉjÉÖÅ[ÇéùǬDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅB
  32.     ÇªÇÃéûÇÃÉÅÉjÉÖÅ[IDÇÕ1Ç©ÇÁ99ÇégópǵǃÇ≠ÇæÇ≥Ç¢ÅB
  33. 4)    GEARÇÕÉÇÅ[É_ÉãÉ_ÉCÉAÉçÉOÅAÉÄÅ[ÉoÉuÉãÉÇÅ[É_ÉãÉ_ÉCÉAÉçÉOà»äOÇÃ
  34.     ÉEÉBÉìÉhÉEÇäJÇ≠DZÇΔÇ™Ç≈Ç´Ç‹ÇπÇÒÅB
  35.  
  36.  
  37. ÅmÉtÉHÉãÉ_ÅïÉtÉ@ÉCÉãÅn
  38.  
  39. BeachTextÇÕãNìÆéûÇ…à»â∫ÇÃÉtÉHÉãÉ_ÇΔÉtÉ@ÉCÉãÇåüçıǵNjÇ∑ÅB
  40.  
  41. 1)    BeachTextÇΔìØÇ∂äKëwÇ…"Seaside"ÇΔǢǧÉtÉHÉãÉ_ǙdžÇÍÇŒÅAǪÇÃâ∫DždžÇÈ
  42.     ÉNÉäÉGÅ[É^Ç™'BchT'Ç≈ÉtÉ@ÉCÉãÉ^ÉCÉvÇ™'BTGr'ÇÃÉtÉ@ÉCÉãÅB
  43. 2)    ä¬ã´ÉtÉ@ÉCÉãÅiBeachText Prefs2ÅjÇΔìØÇ∂äKëwÇ…"Seaside"ÇΔǢǧ
  44.     ÉtÉHÉãÉ_ǙdžÇÍÇŒÅAǪÇÃâ∫DždžÇÈÉNÉäÉGÅ[É^Ç™'BchT'Ç≈ÉtÉ@ÉCÉãÉ^ÉCÉvÇ™
  45.     'BTGr'ÇÃÉtÉ@ÉCÉãÅB
  46. 3)    Ç‡Çµ1)ǙdžÇÍÇŒ2)ÇÕåüçıǵNjÇπÇÒÅB
  47. 4)    ÉtÉ@ÉCÉãÇÃíÜÇ…É^ÉCÉvÇ™'GrCD'Ç≈IDÇ™128ÇÃÉäÉ\Å[ÉXÇ™ïKóvÇ≈Ç∑ÅB
  48. 5)    ç≈ëÂ32å¬Ç‹Ç≈åüçıǵNjÇ∑ÅB
  49. 6)    åüçıÇ…ê¨å˜ÇµÇΩèÍçáÅAGEARÇ…èâä˙ÉÅÉbÉZÅ[ÉWÇëóÇËÇ‹Ç∑ÅB
  50. 7)    èâä˙ÉÅÉbÉZÅ[ÉWÇ≈ê≥èÌèIóπÇ∑ÇÍÇŒÉMÉAÉÅÉjÉÖÅ[Ç…í«â¡ÇµÇ‹Ç∑ÅB
  51.  
  52.  
  53. ÅmÉCÉìÉ^ÉtÉFÅ[ÉXÅn
  54.  
  55. BeachTextÇ©ÇÁÇÕà»â∫ÇÃÉCÉìÉ^ÉtÉFÅ[ÉXÇ…ÇÊǡǃGEARÇåƒÇ—èoǵNjÇ∑ÅB
  56.  
  57. Å|ÉvÉçÉgÉ^ÉCÉvÅ|
  58. pascal void main(BG_ParmPtr parm);
  59.  
  60. parm    :ÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇ÷ÇÃÉ|ÉCÉìÉ^ÅB
  61.  
  62. Å|ÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÅ|
  63. BeachTextÇΔGEARÇΔÇÃÉfÅ[É^åä∑ópÅB
  64.  
  65. typedef struct {                    // ÉpÉâÉÅÅ[É^ÉuÉçÉbÉN
  66.     short            vers;            // GEARÉoÅ[ÉWÉáÉì
  67.     short            message;        // ÉÅÉbÉZÅ[ÉW
  68.     WindowPtr        wp;                // ÉEÉBÉìÉhÉEÉ|ÉCÉìÉ^
  69.     OSType            type;            // ÉfÅ[É^É^ÉCÉv
  70.     Handle            data;            // ì¸èoóÕÉfÅ[É^
  71.     long            size;            // ÉfÅ[É^ÉTÉCÉY
  72.     short            place;            // ÉfÅ[É^ë}ì¸èÍèä
  73.     Byte            mask;            // ÉÅÉjÉÖÅ[É}ÉXÉNÉtÉâÉO
  74.     Boolean            cancel;            // èàóùíÜé~ÉtÉâÉO
  75.     Byte            rsv[26];        // è´óàÇÃägí£óp
  76.     OSErr            error;            // ÉGÉâÅ[ÉRÅ[Éh
  77.     BGOptUPP        uppOpt;            // ÉIÉvÉVÉáÉìÉpÉâÉÅÅ[É^éÊìæ
  78.     BGMdlUPP        uppMdl;            // É_ÉCÉAÉçÉOÉCÉxÉìÉgèàóù
  79.     long            refCon;            // ÉÜÅ[ÉUíËã`
  80. } BG_Parm,*BG_ParmPtr;
  81.  
  82. vers    :GEARÉCÉìÉ^ÉtÉFÅ[ÉXÇÃÉoÅ[ÉWÉáÉìÇ≈Ç∑ÅBÉoÅ[ÉWÉáÉìÇ™ïœçXÇ≥ÇÍÇΩ
  83.         :èÍçáÇÕê≥èÌÇ…ìÆçÏǵǻǢâ¬î\ê´Ç™Ç†ÇËÇ‹Ç∑ÅB
  84.  
  85. message    :GEARÇ…ëŒÇ∑ÇÈÉÅÉbÉZÅ[ÉWÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅBGEARÇÕDZÇÍÇ…ÇÊÇËìÆçÏÇ
  86.         :åàíËÇµÇ»ÇØÇÍnjǻÇËÇ‹ÇπÇÒÅB
  87.  
  88.             BG_INIT        :èâä˙èàóùÇçsǢNjÇ∑ÅBãNìÆéûÇ…ÇPìxåƒÇŒÇÍÇ‹Ç∑ÅB
  89.             BG_EXEC        :ã@î\Çé¿çsǵNjÇ∑ÅB
  90.             BG_TERM        :èIóπèàóùÇçsǢNjÇ∑ÅBèIóπéûÇ…ÇPìxåƒÇŒÇÍÇ‹Ç∑ÅB
  91.  
  92. wp        :GEARÇåƒÇ—èoǵÇΩéûÇ…ÉAÉNÉeÉBÉuDžǻǡǃǢÇÈèëófiǙdžÇÍÇŒÅA
  93.         :èëófiÇÃÉEÉBÉìÉhÉEÉ|ÉCÉìÉ^Ç™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅBäJÇ¢ÇƒÇ¢Ç»ÇØÇÍÇŒ
  94.         :NULLÇ≈Ç∑ÅB
  95.  
  96. type    :ì¸èoóÕÉfÅ[É^ÇÃÉ^ÉCÉvÇéwíËǵNjÇ∑ÅBèâä˙ÉÅÉbÉZÅ[ÉWÇ™åƒÇ—èoÇ≥
  97.         :ÇÍÇΩèÍçáÇÕÅAGEARë§Ç™é¿çséûÇ…ïKóvÇ»É^ÉCÉvÇê›íËǵNjÇ∑ÅB
  98.         :é¿çséûÇ…ÇÕǪÇÍDždžǡÇΩÉfÅ[É^Ç™dataÇ÷ê›íËÇ≥ÇÍÇ‹Ç∑ÅB
  99.         :åªç›égópâ¬î\Ç»É^ÉCÉvÇÕà»â∫ÇÃí ÇËÇ≈Ç∑ÅB
  100.  
  101.             'TEXT'        :ÉeÉLÉXÉgÉfÅ[É^
  102.             'PICT'        :ÉsÉNÉ`ÉÖÉAÉfÅ[É^
  103.             0L            :ÉfÅ[É^ÇÃÇ‚ÇËéÊÇËǻǵ
  104.  
  105. data    :ÉfÅ[É^Ç™ê›íËÇ≥ÇÍÇ‹Ç∑ÅBDZÇÃÉnÉìÉhÉãÇÕBeachTextÇ™ämï€ÅEâï˙
  106.         :ǵNjÇ∑ÅBGEARÇÕì‡óeÅAÉTÉCÉYÇé©óRÇ…ïœçXǵǃLJç\ǢNjÇπÇÒÅB
  107.         :ÉÅÉjÉÖÅ[ÉAÉCÉeÉÄñºÅAÉGÉâÅ[ÉÅÉbÉZÅ[ÉWÇÕPascalï∂éöóÒÇ≈äiî[ǵǃ
  108.         :Ç≠ÇæÇ≥Ç¢ÅB
  109.  
  110. size    :ì¸èoóÕÉfÅ[É^ÇÃÉTÉCÉYÅBèâä˙ÉÅÉbÉZÅ[ÉWÇÃéûÅAtypeÇ™'TEXT'ÇÃ
  111.         :èÍçáÇÕêßå¿ÉTÉCÉYÇ…Ç»ÇËÇ‹Ç∑ÅB
  112.  
  113. place    :ÉfÅ[É^ÇÃë}ì¸ï˚ñ@ÇéwíËǵNjÇ∑ÅBtypeÇ™'TEXT'Ç©'PICT'Ç≈ÅAèëófiÇÃ
  114.         :ì‡óeÇ™ëIëÇ≥ÇÍǃǢÇÈèÍçáÇ…óLå¯Ç≈Ç∑ÅB
  115.  
  116.             BG_REPLC    :ëIëÇ≥ÇÍǃǢÇÈéûÇÕíuÇ´ä∑ǶNjÇ∑ÅB
  117.                         :ëIëÇ≥ÇÍǃǢǻǢéûÇÕë}ì¸É|ÉCÉìÉgÇ÷
  118.                         :ë}ì¸ÇµÇ‹Ç∑ÅB
  119.             BG_INBFR    :ëIëÇ≥ÇÍǃǢÇÈéûÇÕëOï˚Ç÷ë}ì¸ÇµÇ‹Ç∑ÅB
  120.             BG_INAFT    :ëIëÇ≥ÇÍǃǢÇÈéûÇÕå„ï˚Ç÷ë}ì¸ÇµÇ‹Ç∑ÅB
  121.  
  122. mask    :ÉMÉAÉÅÉjÉÖÅ[ÇÉ}ÉXÉNÇ∑ÇÈèåèÇÅAmessageÇ™BG_INITÇÃéûÇ…
  123.         :GEARÇ™ê›íËǵNjÇ∑ÅB
  124.  
  125.             BG_MDNON    :èÌÇ…É}ÉXÉNǵNjÇπÇÒÅB
  126.             BG_MDACT    :èëófiÇÃÉEÉBÉìÉhÉEÇ™ÉAÉNÉeÉBÉuÇ≈ǻǢèÍçáÇÕ
  127.                         :É}ÉXÉNǵNjÇπÇÒÅB
  128.             BG_MDSEL    :èëófiÇÃÉfÅ[É^Ç™ëIëÇ≥ÇÍǃǢǻǢèÍçáÇÕÉ}ÉXÉN
  129.                         :ǵNjÇπÇÒÅB
  130.  
  131. cancel    :í èÌBeachTextÇÕdataÇåªç›ÇÃë}ì¸É|ÉCÉìÉgÇ÷ë}ì¸ÇµÇ‹Ç∑Ç™ÅADZÇÃ
  132.         :ÉtÉâÉOÇ™TRUEÇÃèÍçáÇÕdataÇèàóùǵNjÇπÇÒÅB
  133.         :ê≥èÌÇ…èàóùÇíÜé~ǵÇΩèÍçáÇ…égópǵNjÇ∑ÅB
  134.  
  135. rsv[26]    :è´óàÇÃägí£ÇÃÇΩÇflÇ…ämï€ÇµÇƒÇ†ÇËÇ‹Ç∑ÅB
  136.  
  137. error    :âΩÇÁÇ©ÇÃÉGÉâÅ[Ç™î≠ê∂ǵǃèàóùÇíÜé~ǵÇΩèÍçáÇÕÅADZDZÇ÷ǪÇÃéûÇÃ
  138.         :OSErrÇê›íËǵNjÇ∑ÅBê≥èÌèIóπǵÇΩèÍçáÇÕnoErrÇ≈Ç∑ÅB
  139.         :ì¡ï Ç»ÉGÉâÅ[ÉÅÉbÉZÅ[ÉWÇãAǵÇΩÇ¢èÍçáÇÕDZDZÇ÷BG_ERRÇê›íËǵÅA
  140.         :dataÇ÷íºê⁄Pascalï∂éöóÒÇäiî[Ç∑ÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅB
  141.  
  142. upOpt    :ÉIÉvÉVÉáÉìÉpÉâÉÅÅ[É^ÇéÊìæÇ∑ÇÈÇΩÇflÇ…égópǵNjÇ∑ÅBè⁄ç◊å„èqÅB
  143.  
  144. uppMdl    :GEARÇ™É_ÉCÉAÉçÉOÉCÉxÉìÉgÇèàóùÇ∑ÇÈÇΩÇflÇÃä÷êîÇ≈Ç∑ÅBè⁄ç◊å„èqÅB
  145.  
  146. refCon    :èâä˙ÉÅÉbÉZÅ[ÉWÇ™åƒÇŒÇÍÇΩéûGEARÇÕé©óRÇ…ílÇê›íËÇ∑ÇÈDZÇΔÇ™
  147.         :Ç≈Ç´Ç‹Ç∑ÅBǪǵǃé¿çsÉÅÉbÉZÅ[ÉWÅAèIóπÉÅÉbÉZÅ[ÉWÇ™åƒÇŒÇÍÇÈéû
  148.         :ìØÇ∂ílÇ™ê›íËÇ≥ÇÍǃǢNjÇ∑ÅB
  149.  
  150.  
  151. ÅmÉIÉvÉVÉáÉìÉpÉâÉÅÅ[É^Ån
  152.  
  153. GEARÇ™ì¡éÍÇ»èÓïÒÇïKóvÇΔÇ∑ÇÈéûuppOptÇégǡǃà»â∫ÇÃèÓïÒÇéÊìæÇ∑ÇÈ
  154. DZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅB
  155.  
  156. Å|åƒÇ—èoǵÅ|
  157. CallBGOptProc(uppOpt,WindowPtr wp,BG_OptPtr popt);
  158.  
  159. wp        :BeachTextÇ…ëÆÇ∑ÇÈÉEÉBÉìÉhÉEÉ|ÉCÉìÉ^Ç‹ÇΩÇÕNULL
  160.  
  161. popt    :ÉIÉvÉVÉáÉìÉpÉâÉÅÅ[É^Ç÷ÇÃÉ|ÉCÉìÉ^
  162.  
  163. typedef struct {                    // ÉIÉvÉVÉáÉìÉpÉâÉÅÅ[É^
  164.     short            vers;            // GEARÉoÅ[ÉWÉáÉì
  165.     short            refNum;            // ÉäÉtÉ@ÉåÉìÉXî‘çÜ
  166.     QDGlobals        *pqd;            // QuickDrawÉOÉçÅ[ÉoÉã
  167.     short            envr;            // ä¬ã´É^ÉCÉv
  168.     short            procID;            // ÉÄÅ[ÉoÉuÉãÉÇÅ[É_ÉãID
  169.     short            font;            // ÉtÉHÉìÉg
  170.     short            size;            // ÉtÉHÉìÉgÉTÉCÉY
  171.     short            spcPix;            // ÉXÉyÅ[ÉXïùÅiPixelÅj
  172.     short            tabs;            // É^ÉuïùÅiÉXÉyÅ[ÉXÅj
  173.     short            width;            // çsïùÅiÉXÉyÅ[ÉXÅj
  174.     Byte            rsv[46];        // è´óàÇÃägí£óp
  175. } BG_Opt,*BG_OptPtr;
  176.  
  177. vers    :GEARÉCÉìÉ^ÉtÉFÅ[ÉXÇÃÉoÅ[ÉWÉáÉìÇ≈Ç∑ÅB
  178.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇ≈LJê≥ǵǢílÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  179.  
  180. refNum    :BeachTextÇÃÉtÉ@ÉCÉãÉäÉtÉ@ÉåÉìÉXî‘çÜÅBÉJÉåÉìÉgÉäÉ\Å[ÉXÇÕ
  181.         :GEARÇäiî[ǵÇΩÉtÉ@ÉCÉãDžǻǡǃǢNjÇ∑ÇÃÇ≈ÅAì¡Ç…BeachTextÇÃ
  182.         :ÉtÉ@ÉCÉãÇéQèΔǵÇΩÇ¢èÍçáÇ…égópǵNjÇ∑ÅBÇæÇæÇµçXêVÇçsǡǃÇÕ
  183.         :Ç¢ÇØÇ‹ÇπÇÒÅB
  184.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇ≈LJê≥ǵǢílÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  185.  
  186. pqd        :QuickDrawÉOÉçÅ[ÉoÉãïœêîÇÃÉAÉhÉåÉXÇ™ï‘ãpÇ≥ÇÍÇ‹Ç∑ÅB
  187.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇ≈LJê≥ǵǢílÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  188.  
  189. envr    :BeachTextÇÃåªç›ÇÃä¬ã´Ç™ê›íËÇ≥ÇÍǃǢNjÇ∑ÅB
  190.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇ≈LJê≥ǵǢílÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  191.  
  192.             BT_ENVE        :âpåÍä¬ã´
  193.             BT_ENVJ        :ì˙ñ{åÍä¬ã´
  194.  
  195. procID    :ÉÄÅ[ÉoÉuÉãÉÇÅ[É_ÉãÉ_ÉCÉAÉçÉOÇäJÇ´ÇΩÇ¢èÍçáDZÇÃIDÇégǧDZÇΔÇ™
  196.         :Ç≈Ç´Ç‹Ç∑ÅB
  197.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇ≈LJê≥ǵǢílÇ™ì¸Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  198.  
  199. font    :éwíËÉEÉBÉìÉhÉEÅièëófiÅjÇ™égópíÜÇÃÉtÉHÉìÉgéÌï Ç≈Ç∑ÅB
  200.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇÕílÇÕïsíËÇ≈Ç∑ÅB
  201.  
  202. size    :éwíËÉEÉBÉìÉhÉEÅièëófiÅjÇ™égópíÜÇÃÉtÉHÉìÉgÉTÉCÉYÇ≈Ç∑ÅB
  203.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇÕílÇÕïsíËÇ≈Ç∑ÅB
  204.  
  205. spcPix    :éwíËÉEÉBÉìÉhÉEÅièëófiÅjÇ≈ê›íËÇ≥ÇÍǃǢÇÈÉXÉyÅ[ÉXÇÃïùÇ™PixelÇ≈
  206.         :ï‘ÇËÇ‹Ç∑ÅB
  207.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇÕílÇÕïsíËÇ≈Ç∑ÅB
  208.  
  209. tabs    :éwíËÉEÉBÉìÉhÉEÅièëófiÅjÇ≈ê›íËÇ≥ÇÍǃǢÇÈÉ^ÉuïùÇ™ÉXÉyÅ[ÉXÇ≈
  210.         :ï‘ÇËÇ‹Ç∑ÅB
  211.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇÕílÇÕïsíËÇ≈Ç∑ÅB
  212.  
  213. width    :éwíËÉEÉBÉìÉhÉEÅièëófiÅjÇ≈ê›íËÇ≥ÇÍǃǢÇÈçsïùÇ™ÉXÉyÅ[ÉXÇ≈
  214.         :ï‘ÇËÇ‹Ç∑ÅBê‹ÇËï‘ǵÇÃê›íËÇ™Ç≥ÇÍǃǢǻǢéûÇÕ0Ç≈Ç∑ÅB
  215.         :éwíËÉEÉBÉìÉhÉEÇ™NULLÇÃèÍçáÇÕílÇÕïsíËÇ≈Ç∑ÅB
  216.  
  217. rsv[46]    :è´óàÇÃägí£ÇÃÇΩÇflÇ…ämï€ÇµÇƒÇ†ÇËÇ‹Ç∑ÅB
  218.  
  219.  
  220. ÅmÉ_ÉCÉAÉçÉOÉCÉìÉ^ÉtÉFÅ[ÉXÅn
  221.  
  222. GEARÇ™É_ÉCÉAÉçÉOÇäJÇ≠éûÇÕuppMdlÇ…ÇÊǡǃÉCÉxÉìÉgÇèàóùÇ∑ÇÈDZÇΔÇ™
  223. Ç≈Ç´Ç‹Ç∑ÅB
  224.  
  225. Å|åƒÇ—èoǵÅ|
  226. CallBGMdlProc(uppMdl,ModalFilterUPP uppFlt,short *hit,short modal);
  227.  
  228. uppFlt    :ÉtÉBÉãÉ^ä÷êîÇÃÉAÉhÉåÉX(UniversalProcPtr)
  229.  
  230. hit        :ëIëÇ≥ÇÍÇΩÉAÉCÉeÉÄî‘çÜÇ™ï‘ÇËÇ‹Ç∑
  231.  
  232. modal    :É_ÉCÉAÉçÉOÇÃéÌófi
  233.  
  234.             BG_MODL        :ÉÇÅ[É_ÉãÉ_ÉCÉAÉçÉO
  235.             BG_MOOV        :ÉÄÅ[ÉoÉuÉãÉÇÅ[É_ÉãÉ_ÉCÉAÉçÉO
  236.  
  237.  
  238. ÅmìÆçÏä¬ã´Ån
  239.  
  240. BeachTextÇ©ÇÁGEARÇ™åƒÇ—èoÇ≥ÇÍÇÈéûÇÕà»â∫ÇÃä¬ã´Ç…ǻǡǃǢNjÇ∑ÅB
  241.  
  242. 1)    GEARÇÃÉäÉ\Å[ÉXÉtÉ@ÉCÉãÇÕOpenÇ≥ÇÍÅAÉJÉåÉìÉgDžǻǡǃǢNjÇ∑ÅB
  243. 2)    BeachTextÇ™ÉEÉBÉìÉhÉEÇäJǢǃǢÇÈèÍçáÇÕǪÇÃÉEÉBÉìÉhÉEÇ™ÉJÉåÉìÉgÇ…
  244.     Ç»Ç¡ÇƒÇ¢Ç‹Ç∑ÅB
  245.  
  246.  
  247. ÅmÉÅÉbÉZÅ[ÉWÅn
  248.  
  249. äeÉÅÉbÉZÅ[ÉWÇÃåƒÇ—èoǵÇÃÉVÅ[ÉPÉìÉXÇê‡ñæÇµÇ‹Ç∑ÅBGEARäJî≠ÇÃéQçlDžǵǃ
  250. Ç≠ÇæÇ≥Ç¢ÅB
  251.  
  252. Å|èâä˙ÉÅÉbÉZÅ[ÉWÅ|
  253. 1)    ÉäÉ\Å[ÉX'GrCD'(128)ÇÉçÅ[ÉhǵNjÇ∑ÅB
  254. 2)    ÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇçÏê¨ÇµÇ‹Ç∑ÅB
  255.  
  256.         vers        -> BG_VERS
  257.         message        -> BG_INIT
  258.         wp            -> NULL
  259.         type        -> 0L
  260.         data        -> ÉTÉCÉY0ÇÃÉnÉìÉhÉã
  261.         size        -> 0L
  262.         uppOpt        -> ÉIÉvÉVÉáÉìÉvÉçÉVÉWÉÉÇÃÉAÉhÉåÉX
  263.         uppMdl        -> NULL
  264.         refCon        -> 0L
  265.         
  266. 3)    ÉäÉ\Å[ÉXÇÉçÉbÉNǵÅAêÊì™ÉAÉhÉåÉXÇ÷ÉWÉÉÉìÉvÅB
  267. 4)    GEARì‡Ç≈èàóùÇçsÇ¢ÅAÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇ…ê›íËǵNjÇ∑ÅB
  268.  
  269.         type        <- óvãÅÇ∑ÇÈÉ^ÉCÉv
  270.         data        <- ÉÅÉjÉÖÅ[ï∂éöóÒÅiPascalå^Åj
  271.         size        <- êßå¿ÉTÉCÉYÅi'TEXT'ÇÃéûÇÃÇ›Åj
  272.         mask        <- ÉÅÉjÉÖÅ[É}ÉXÉNÇÃèåè
  273.         cancel        <- éÊè¡ÉtÉâÉO
  274.         refCon        <- ÉÜÅ[ÉUíËã`
  275.  
  276. 5)    GEARÇ©ÇÁïúãAǵÅAÉäÉ\Å[ÉXÇÉAÉìÉçÉbÉNÅEÉäÉäÅ[ÉXǵNjÇ∑ÅB
  277. 6)    typeÅAsizeãyÇ—refConÇãLâØÇµÅAdataï∂éöóÒÇÉÅÉjÉÖÅ[Ç÷ìoò^ǵNjÇ∑ÅB
  278.  
  279. Å|é¿çsÉÅÉbÉZÅ[ÉWÅ|
  280. 1)    ÉäÉ\Å[ÉX'GrCD'(128)ÇÉçÅ[ÉhǵNjÇ∑ÅB
  281. 2)    ÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇçÏê¨ÇµÇ‹Ç∑ÅB
  282.  
  283.         vers        -> BG_VERS
  284.         message        -> BG_EXEC
  285.         wp            -> ÉAÉNÉeÉBÉuÉEÉBÉìÉhÉEÇÃÉ|ÉCÉìÉ^
  286.         type        -> èâä˙ÉÅÉbÉZÅ[ÉWÇ≈éwíËÇ≥ÇÍÇΩÉ^ÉCÉv
  287.         data        -> åªç›ëIëÇ≥ÇÍǃǢÇÈÉfÅ[É^ÇÃÉnÉìÉhÉã
  288.         size        -> ÉfÅ[É^ÇÃÉTÉCÉY
  289.         uppOpt        -> ÉIÉvÉVÉáÉìÉvÉçÉVÉWÉÉÇÃÉAÉhÉåÉX
  290.         uppMdl        -> É_ÉCÉAÉçÉOÉvÉçÉVÉWÉÉÇÃÉAÉhÉåÉX
  291.         refCon        -> èâä˙ÉÅÉbÉZÅ[ÉWÇ≈ê›íËÇ≥ÇÍÇΩíl
  292.  
  293. 3)    ÉäÉ\Å[ÉXÇÉçÉbÉNǵÅAêÊì™ÉAÉhÉåÉXÇ÷ÉWÉÉÉìÉvÅB
  294. 4)    GEARì‡Ç≈èàóùÇçsÇ¢ÅAÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇ…ê›íËǵNjÇ∑ÅB
  295.  
  296.         data        <- èàóùÇçsÇ¡ÇΩÉfÅ[É^ÅiÉGÉâÅ[ÉÅÉbÉZÅ[ÉWÅj
  297.         size        <- ÉfÅ[É^ÇÃÉTÉCÉY
  298.         place        <- ÉfÅ[É^ÇÃë}ì¸èÍèä
  299.         cancel        <- éÊè¡ÉtÉâÉO
  300.         error        <- ÉGÉâÅ[ÉRÅ[Éh
  301.  
  302. 5)    GEARÇ©ÇÁïúãAǵÅAÉäÉ\Å[ÉXÇÉAÉìÉçÉbÉNÅEÉäÉäÅ[ÉXǵNjÇ∑ÅB
  303. 6)    cancelÉtÉâÉOÇ™FALSEÇ»ÇÁÇŒÉfÅ[É^Çë}ì¸ÇµÇ‹Ç∑ÅB
  304.  
  305. Å|èIóπÉÅÉbÉZÅ[ÉWÅ|
  306. 1)    ÉäÉ\Å[ÉX'GrCD'(128)ÇÉçÅ[ÉhǵNjÇ∑ÅB
  307. 2)    ÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇçÏê¨ÇµÇ‹Ç∑ÅB
  308.  
  309.         vers        -> BG_VERS
  310.         message        -> BG_TERM
  311.         wp            -> NULL
  312.         type        -> 0L
  313.         data        -> NULL
  314.         size        -> 0L
  315.         uppOpt        -> ÉIÉvÉVÉáÉìÉvÉçÉVÉWÉÉÇÃÉAÉhÉåÉX
  316.         uppMdl        -> NULL
  317.         refCon        -> èâä˙ÉÅÉbÉZÅ[ÉWÇ≈ê›íËÇ≥ÇÍÇΩíl
  318.  
  319. 3)    ÉäÉ\Å[ÉXÇÉçÉbÉNǵÅAêÊì™ÉAÉhÉåÉXÇ÷ÉWÉÉÉìÉvÅB
  320. 4)    GEARì‡Ç≈èàóùÇçsÇ¢ÅAÉpÉâÉÅÅ[É^ÉuÉçÉbÉNÇ…ê›íËǵNjÇ∑ÅB
  321.  
  322.         error        <- noErr
  323.  
  324. 5)    GEARÇ©ÇÁïúãAǵÅAÉäÉ\Å[ÉXÇÉAÉìÉçÉbÉNÅEÉäÉäÅ[ÉXǵNjÇ∑ÅB
  325.  
  326.  
  327. Åmíçà”éñçÄÅn
  328.  
  329. džÇÈã@î\Ç™åªç›ÇÃÉVÉXÉeÉÄÇ≈óLå¯Ç©Ç«Ç§Ç©ÇîªífÇ∑ÇÈÇÃÇÕGEARÇÃê”îCÇ≈Ç∑ÅB
  330. GEARÇÃì‡ïîÇ≈ÇÕToolBoxÇÃèâä˙âªÇçsÇÌǻǢÇ≈Ç≠ÇæÇ≥Ç¢ÅBBeachTextÇ≈
  331. èâä˙âªÇçsǡǃǢǻǢToolBoxÇÕégópÇ≈Ç´Ç‹ÇπÇÒÅB
  332. è´óàÇÃÉoÅ[ÉWÉáÉìÉAÉbÉvÇ…ÇÊǡǃêVǵǢToolBoxÇ™égópÇ≈Ç´ÇÈâ¬î\ê´Ç™
  333. džÇËÇ‹Ç∑ÅB
  334.  
  335.  
  336. Copyright (C) 1991-1995 SOUGOU System Service LTD.
  337. All rights reserved.
  338.